home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 7
/
FM Towns Free Software Collection 7.iso
/
taropyon
/
hewin
/
ccisrc
/
main.cci
< prev
next >
Wrap
Text File
|
1993-11-30
|
9KB
|
244 lines
/*************************************************************************
* "hewin.cci"
*************************************************************************/
#define _GENERIC_SYSTEM /* 一般公開用 */
/* #define _TERM_IGNORE */ /* 通信機能は使わない */
#include "ccicfg.h"
#include "defs.h"
#include "apl.h"
#include "lib.h"
#include "fdl.h"
#include "color.h"
#include "keycode.h"
#include "moscur.h"
#include "aplno.h"
#include "aplcol.h"
#include "txdofs.h"
#include "txdcmd.h"
#include "tdpcmd.h"
#include "affcopy.h"
#include "affrun.h"
#include "dcncmd.h"
#include "dcncci.h"
#ifndef _NTM_IGN
# include "ntmcmd.h"
# include "ntmcci.h"
#endif
char *SysMacro = NULL; /* システムマクロ */
#ifndef __HEWN__
char SYSMACRO_FN[10] = {'h','e','w','i','n','.','m','a','c','\0'};
#else
char SYSMACRO_FN[10] = {'h','e','w','m','.','m','a','c','\0'};
#endif
#include "lib.cci"
#include "colset.cci"
#include "bgm.cci"
#include "blackout.cci"
#include "timer.cci"
#include "debug.cci"
#include "wpaper.cci"
#include "expcfg.cci"
#ifndef _CCI_APL_IGN
#include "cciapl.cci"
#endif
/*************************************************************************
* システム初期化
*************************************************************************/
#define WILDCARD_TBL_NUM 11
char *WildCardTbl[WILDCARD_TBL_NUM] =
{
"*.*" ,
"*.asm",
"*.bgm",
"*.c" ,
"*.cci",
"*.doc",
"*.eup",
"*.h" ,
"*.mid",
"*.mml",
"*.txt"
};
/*************************************************************************
* ファイルマネージャの環境設定
*************************************************************************/
int AfmSetup()
{
int i;
char comspec[128], *s;
char *console;
if ( (s = getenv("COMSPEC")) == NULL )
strcpy( comspec, "C:\\COMMAND.COM /C" );
else
sprintf( comspec,"%s /C", s );
console = "oricon";
Afm_setRunFile(0,".exe" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, "","");
Afm_setRunFile(0,".com" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, "","");
Afm_setRunFile(0,".bat" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, "","");
Afm_setRunFile(0,"miel.com" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, console, comspec);
Afm_setRunFile(0,"mipp.exe" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, console, comspec);
Afm_setRunFile(0,"setup.exe" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, console, comspec);
Afm_setRunFile(0,"makefile" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, "make" ,"");
Afm_setRunFile(0,".lzh" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, "LHa" ,"l");
Afm_setRunFile(0,".ish" , AFFRUN_TYP_DOS, AFFRUN_DOS_MD_NORMAL, "ish" ,"% /r");
#ifdef _TAROPYON_SYSTEM
Afm_setRunFile(0,".doc" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 80 -tab 2 -tabSpace ON -dspCUL ON -dspKS ON -colTbl editcol.tbl");
Afm_setRunFile(0,".txt" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 80 -tab 2 -tabSpace ON -dspCUL ON -dspKS ON -colTbl editcol.tbl");
Afm_setRunFile(0,".nif" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 80 -tab 8 -dspCUL ON -dspKS ON -colTbl editcol.tbl");
Afm_setRunFile(0,".c" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 256 -autoIndent ON -tab 4 -dspCUL ON -dspKS ON -colTbl editcol.tbl");
Afm_setRunFile(0,".cci" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 256 -autoIndent ON -tab 4 -dspCUL ON -dspKS ON -colTbl editcol.tbl");
Afm_setRunFile(0,".h" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 256 -autoIndent ON -tab 4 -dspCUL ON -dspKS ON -colTbl editcol.tbl");
Afm_setRunFile(0,".asm" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 256 -autoIndent ON -tab 8 -dspCUL ON -dspKS ON -colTbl editcol.tbl");
#else
Afm_setRunFile(0,".doc" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 80 -tab 2 -tabSpace ON -dspKS ON");
Afm_setRunFile(0,".txt" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 80 -tab 2 -tabSpace ON -dspKS ON");
Afm_setRunFile(0,".c" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 256 -autoIndent ON -tab 4 -dspKS ON");
Afm_setRunFile(0,".cci" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 256 -autoIndent ON -tab 4 -dspKS ON");
Afm_setRunFile(0,".h" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 256 -autoIndent ON -tab 4 -dspKS ON");
Afm_setRunFile(0,".asm" , AFFRUN_TYP_IAP, APL_TYPE_TDP, "-rightMargin 256 -autoIndent ON -tab 8 -dspKS ON");
#endif
Afm_setRunFile(0,".tbi" , AFFRUN_TYP_IAP, APL_TYPE_TBI , "");
Afm_setRunFile(0,".tif" , AFFRUN_TYP_IAP, APL_TYPE_IDP , "");
Afm_setRunFile(0,".snd" , AFFRUN_TYP_CCI, "CCI_sndPlay", "");
Afm_setRunFile(0,".bgm" , AFFRUN_TYP_CCI, "CCI_bgmPlay" , "");
Afm_setRunFile(0,".eup" , AFFRUN_TYP_CCI, "CCI_midPlay" , "");
Afm_setRunFile(0,".mid" , AFFRUN_TYP_CCI, "CCI_midPlay" , "");
Afm_setRunFile(0,".kbl" , AFFRUN_TYP_CCI, "CCI_loadKbl", "");
Afm_setRunFile(0,".rpl" , AFFRUN_TYP_CCI, "CCI_loadRpl", "");
#ifdef _TAROPYON_SYSTEM
/* ネイティブモード子プロセスプログラムの格納パス */
AplPclSetPath( "I:/HC/GUILIB3/PRG/CCI" ); /* CCI */
AplPclSetPath( "I:/HC/GUILIB3/PRG/GSPLAY" ); /* GSPLAY */
AplPclSetPath( "I:/HC/GUILIB3/PRG/LHX" ); /* LHx */
AplPclSetPath( "I:/HC/GUILIB3/PRG/MML" ); /* HE386 */
AplPclSetPath( "I:/HC/GUILIB3/PRG/ZMODEM" ); /* SZ/RZ */
#endif
/* デフォルトワイルドカードの設定 */
for ( i = 0 ; i < WILDCARD_TBL_NUM; ++i )
FdlSetWildCardList( WildCardTbl[i] );
}
/*************************************************************************
* HEwin 起動時の初期化
*-------------------------------------------------------------------------
* int HEWIN_start(int argc, char **argv)
* argc, argv には未定義の起動時オプションが渡される
*************************************************************************/
int HEWIN_start(int argc, char **argv)
{
int i, kan, kan_md;
char tmp[256], *s;
if ( (SysMacro = AMAC_allocWork(0)) != NULL )
{
sprintf( tmp, "%s%s", AplGetStartPath(), SYSMACRO_FN );
AMAC_load( SysMacro, tmp );
GetAsciiTime( tmp, time(NULL) );
AMAC_setKey( SysMacro, "Startup_time", tmp );
}
AfmSetup();
#ifndef _CCI_APL_IGN
CCI_aplSysInit();
#endif
for ( i = 0; i < argc ; ++i )
{
s = argv[i];
if ( strcmpi( s, "-fep_roumaji") == 0 )
{ /* デフォルト入力モード[ローマ字] */
kan = KBF_kan_getMode(); /* 現在のかな漢動作状態 */
if ( kan < 0 ) /* FEP OFF状態 */
{ /* FEP ON にしてモード取得 */
KBF_kan_on();
kan_md = KBF_kan_getMode();
} else
kan_md = kan; /* 現在のモード */
if ( kan_md >= 0 )
{
kan_md = (kan_md & 0xFFFFFF0F) | KAN_ROUMAZI;
KBF_kan_setMode( kan_md ); /* モード設定 */
if ( kan < 0 ) /* かな漢動作状態を元に戻す */
KBF_kan_off();
}
}
}
return (NORMAL);
}
/*************************************************************************
* HEwin 終了時の処理
*************************************************************************/
int HEWIN_term(int saveFlag)
{
char tmp[256];
#ifndef _CCI_APL_IGN
CCI_aplSysTerm(saveFlag);
#endif
if ( SysMacro )
{
GetAsciiTime( tmp, time(NULL) );
AMAC_setKey( SysMacro, "Exit_time", tmp );
sprintf( tmp, "%s%s", AplGetStartPath(), SYSMACRO_FN );
AMAC_save( SysMacro, tmp, "System macro" );
}
return (0);
}
/*************************************************************************
* アプリケーションセレクタ、デフォルトアイテム登録
*-------------------------------------------------------------------------
* "hewin.itm" が存在しない場合に、この関数が実行される
*************************************************************************/
int AslUsr_setStartItem()
{
/* 関数名 タイトル パラメータ */
Asl_setDefCciItem("CCI_textViewer" ,"☆読んでネ","message.doc");
Asl_setDefCciItem("CCI_textViewer" ,"説明" ,"hewin.doc");
Asl_setDefCciItem("CCI_setWallPaper" ,"壁紙" ,"");
Asl_setDefCciItem("CCI_sidework" ,"SideWork" ,"");
Asl_setDefCciItem("CCI_sndPlay" ,"SND-PLAY" ,"");
Asl_setDefCciItem("CCI_expSetup" ,"EXP SETUP" ,"");
/* Asl_setDefCciItem("CCI_hewin_install" ,"Install" ,""); */
#ifdef _CCISRC_EXTRACT
Asl_setDefCciItem("CCI_extractHewinCci","CCI解凍" ,"");
#endif
return (NORMAL);
}
#include "he386.cci"
#include "prs.cci"
#include "tdp.cci"
#include "dcn.cci"
#ifndef _NTM_IGN
# include "ntm.cci"
#endif
#include "tools.cci"
#include "sndplay.cci"